import comtypes.client
import os


def convert_word_to_pdf(doc_path, pdf_path):
    # 确保提供的路径存在
    if not os.path.exists(doc_path):
        raise ValueError(f"指定的Word文件不存在: {doc_path}")

    word_format_pdf = 17

    # 初始化Word应用程序
    word_app = comtypes.client.CreateObject('Word.Application')
    word_app.Visible = False  # 不打开应用程序界面

    # 打开Word文档
    doc = word_app.Documents.Open(doc_path)

    # 将Word文档保存为PDF
    doc.SaveAs(pdf_path, FileFormat=word_format_pdf)

    # 关闭文档和应用程序
    doc.Close()
    word_app.Quit()


# 使用示例
word_file = 'C:/Users/yra/Desktop/MathVecCluster/data/docx/2019年北京市中考数学试卷.docx'  # 这里替换为你的Word文件路径
pdf_file = 'C:/Users/yra/Desktop/MathVecCluster/data/pdf/2019年北京市中考数学试卷.pdf'  # 这里替换为PDF文件的保存路径
convert_word_to_pdf(word_file, pdf_file)